import pandas as pd

pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('cj.xlsx',index_col=0)    #1.导入表
print(df)

#2.缺失值处理 删除缺失值
df=df.dropna(subset=['数学'])
print('删除缺失值行后的信息：\n',df)

#3.重复值处理   检查重复值 +删除完全重复的第一行外的其他完全重复的行
print('检查所有列的重复值：\n', df.duplicated())

print('删除除完全重复的zuihou一行外其他完全重复的行：\n', df.drop_duplicates(keep='last'))

#4.异常值 语文成绩小于0大于110都为异常值

df2=df['语文'][(df['语文']<0)|(df['语文']>110)]
df=df.drop(df2.index)
print('删除异常值之后的数据：\n',df)

#5按行计算总成绩，并添加到列末
df['总成绩'] = df.sum(axis=1, numeric_only=True)


##7对 中的“总成绩”列进行排名，排名规则是降序排列，得出的排名结果存储在“排名”列中。
df['排名'] = df['总成绩'].rank(method='first', ascending=False)

##8按“排名”列升序排序 。
df.sort_values(by='排名', ascending=True, inplace=True)
print('按总成绩排名和升序排序：\n', df)
df.to_excel('cj2.xlsx', index=False)



